#pragma once
#include<iostream>
using namespace std;
class Sort {
public:
	Sort(int n = 1);
	void AdjustUp(int kid);
	void AdjustDown(int size, int parent);
	int GetMidIndex(int left, int right);
	int HoareVersion(int left, int right);
	void push(int x);

	void InsertSort();
	void ShellSort();
	void SelectSort();
	void HeapSort();
	void BubbleSort();
	
	void QuickSort(int left , int right);
	void print();
	~Sort();
private:
	int* _a;
	int _n;
};